Traditionally, access control systems have allowed secured access to enterprise resources such as web pages, files, applications and web services by maintaining lists of users who have a prior relationship to the enterprise (customers, employees) and their credentials, together with a list of resources that each user (or groups of users) are entitled to use.
Increasingly, enterprises are required to provide services to users who do not have a direct or prior relationship with the enterprise, but instead have a direct or prior relationship with third-party partner enterprises. One way to support this type of business relationship is to have partners issue security tokens to their known users that can then be used as a means of authentication at the target enterprise. This flexible concept of identity, wherein users originating from one enterprise can authenticate at a second enterprise, is known as “identity federation”.
However, providing such third-party users controlled access to resources is a challenging problem. The identity of the user is not known in advance, so it is not possible to maintain an access control list indicating which of the resources the particular user should be allowed to access. Additionally, the authentication method relevant to a user is not known when the user attempts to access a resource. Therefore, the user must be consulted on the authentication method that they desire to use.
Individuals have multiple sources of identity on the internet. Some identities can be correlated with accounts at public portals, such as Yahoo® or Earthlink®, while other identities are correlated with a person's workplace, or at financial institutions where a user has an account. These identity repositories maintain user information and manage credentials. The repositories are capable of acting as sources of trust. The concept of affiliation involves leveraging the identities of users to enable users to utilize resources, or perform transactions, securely at sites other than their site of origin.
Information about users is communicated from the origin site to the site providing services using a number of different technologies. One example technical standard, Security Assertion Markup Language (SAML), defines an XML framework for exchanging authentication and authorization information between enterprises or web sites. SAML is a standard currently from OASIS.
One application of SAML is to support the secure transfer of an authenticated identity from one enterprise to another when users are utilizing a standard commercial browser. The SAML Web browser profile for Single Sign-On, Prateek Mishra, et, al, The OASIS SSTC SAML Bindings and Profile Specification, describes a known canonical sequence of Hyper Text Transfer Protocol (HTTP) exchanges that convey SAML assertions from a home or source site to a site providing services, i.e., a content site or destination site. A user may use the described protocol to authenticate at their home site and utilize services from other sites in a secure fashion. One of ordinary skill in the art will appreciate that the terms home site and source site are interchangeable as utilized herein, and that the terms content site and destination site are likewise interchangeable as utilized herein. The different terminology stems from different protocols, however the concept of home or source and content or destination are substantially the same.
Another example technology for providing secure user information is Microsoft Passport®, made by the Microsoft Corporation of Redmond, Wash. MS Passport® is a proprietary identity repository controlled and managed by Microsoft Corporation. Identity information in Passport® is transferred as an encrypted string on the URL line from the Passport site to the service provider site. Microsoft Corporation has provided Application Program Interfaces (APIs) that enable third-party software to read the information conveyed by the URL.
There can be a number of additional protocols involving the use of “tokens” to carry user information for use in inbound affiliation. AOL has announced an initiative called “Magic Carpet” with roughly the same goals as Passport. The Liberty Alliance Project is defining a “universal open standard for single sign-on”. This effort may yield yet another token format and protocol for communicating identity across enterprises.
Traditionally, directory synchronization, use of meta-directories or bulk upload of user information from one site to another has been utilized as a technique to solve the remote authentication problem. These techniques are effective within a single administrative zone and with a small number of user stores. They pose security hazards in that sensitive data such as passwords may be unnecessarily exposed to administrators and system administrators. They do not scale beyond a small number of user stores.